Volume Weighted MACD + x-SignalingThis is a script I remade from 2 previous TDuser's scripts.
Thanks community for sharing, I hope you find it useful.
φ!
Cerca negli script per "ma cross"
EMA & MA Crossover The Moving Average Crossover trading strategy is possibly the most popular
trading strategy in the world of trading. First of them were written in the
middle of XX century, when commodities trading strategies became popular.
This strategy is a good example of so-called traditional strategies.
Traditional strategies are always long or short. That means they are never
out of the market. The concept of having a strategy that is always long or
short may be scary, particularly in today’s market where you don’t know what
is going to happen as far as risk on any one market. But a lot of traders
believe that the concept is still valid, especially for those of traders who
do their own research or their own discretionary trading.
This version uses crossover of moving average and its exponential moving average.
Random State Machine Strategy📌 Random State Machine Strategy (Educational)
This strategy showcases a randomized entry model driven by a finite state machine, integrated with user-defined exit controls and a full-featured moving average filter.
🧠 Trade Entry Logic
Entries occur only when:
A random trigger occurs (~5% probability per bar)
The state machine accepts a new transition (sm.step())
Price is:
Above the selected MA for long entries
Below the selected MA for short entries
This ensures that entries are both stochastically driven and trend-aligned, avoiding frequent or arbitrary trades.
⚙️ How It Works
Randomized Triggers
A pseudo-random generator (seeded with time and volume) attempts to trigger state transitions.
Finite State Machine
Transitions are managed using the StateMachine from robbatt/lib_statemachine — credit to @robbatt for the modular FSM design.
Controlled Reset
The state machine resets every N bars (default: 100) if at least two transitions have occurred. This prevents stale or locked states.
Backtest Range
Define a specific test window using Start and End Date inputs.
Risk & Exits
Specify risk in points and a target risk/reward ratio. TP is auto-computed. Timed and MA-based exits can be toggled.
🧪 How to Use
Enable Long or Short trades
Choose your Moving Average type and length
Set Risk per trade and R/R ratio
Toggle TP/SL, timed exit, or MA cross exit
Adjust the State Reset Interval to suit your signal frequency
📘 Notes
Educational use only — not financial advice
Random logic is used to model structure, not predict movement
Thanks to @robbatt for the lib_statemachine integration
CANX MA Crossover© CanxStixTrader
Moving average crossover systems measure drift in the market. They are great strategies for time-limited traders. KEEP IT SIMPLE
This strategy works both for buys and sells using the reaction line to guide your position against the reactions.
HOW TO USE THE INDICATOR
1) Choose your market and timeframe.
2) Choose the length.
3) Choose the multiplier.
4) Choose if the strategy is long-only or bidirectional (longs & shorts).
TIPS
The strategy works best in bullish markets as that is the primary direction that market such as stocks, indexes and metals like to move.
- Increase the multiplier to reduce whipsaws
- Increase the length to take fewer trades
- Decrease the length to take more trades
- Try a Long-Only strategy to see if that performs better.
The base set up when you load the indicator is for the 1 minute chart on gold. We found that it also works well on the US Indexes. For other markets you may need to change the length and multiplier to suit the market and back test its results.
Daily Moving Averages on Intraday ChartsThis moving average script displays the chosen 5 daily moving averages on intraday (minute) charts. It automatically adjusts the intervals to show the proper moving averages.
In a day there are 375 trading minutes from 9:15 AM to 3:30PM in Indian market. In 5 days there are 1875 minutes. For other markets adjust this data accordingly.
If 5DMA is chosen on a five minute chart the moving average will use 375 interval values (1875/5 = 375) of 5minute chart to calculate moving average. Same 5DMA on 25minute chart will use 75 interval values (1875/25 = 75).
On a 1minute chart the 5DMA plot will use 1875 interval values to arrive at the moving average.
Since tradingview only allows 5000 intervals to lookback, if a particular daily moving average on intraday chart needs more than 5000 candle data it won't be shown. E.g 200DMA on 5minute chart needs 15000 candles data to plot a correct 200DMA line. Anything less than that would give incorrect moving average and hence it won't be shown on the chart.
MA crossover for the first two MAs is provided. If you want to use that option, make sure you give the moving averages in the correct order.
You can enhance this script and use it in any way you please as long as you make it opensource on TradingView. Feedback and improvement suggestions are welcome.
Special thanks to @JohnMuchow for his moving averages script for all timeframes.
Plot background depending on Index EMA 10 and EMA 20This indicator gives the user an easy way to check the conditions of the market.
Up market should be good for breakout traders.
Down market should be good for breakdown shortsellers
The others should be good for pullback buyers.
This script automaticlly check which index should be used for the depending on which ticker is view. If no match is found indicator will use IXIC as reference.
The script works for Nordic and US stocks.
"OMXSPI"
"OBX"
"OMXSPI"
"OMXHPI"
"OMXCPI"
"IXIC"
It then alculated the EMA10 and EMA20 for the index and plots the background depending on 6 differnet conditions.
EMA10 below EMA20 and EMA10 and EMA20 is sloping down. //Down market
EMA10 above EMA20 and EMA10 and EMA20 is sloping up. //Up market
EMA10 below EMA20 and EMA10 sloping up and EMA20 is sloping down. //First indication by market to move up
EMA10 above EMA20 and EMA10 sloping down and EMA20 is sloping up. //First indication by market to move down
EMA10 below EMA20 and EMA10 sloping up and EMA20 is sloping up. //Possible MA cross over
EMA10 below EMA20 and EMA10 sloping down and EMA20 is sloping down. //Possible MA cross over
RedK DIY ZLMA: Customizable Zero-Lag MA (Educational / Utility)This script is more of an educational / utility piece rather than a fully-fledged indicator - It provides an easy way to customize and produce a zero-lag Moving average that can then be used in various scenarios
What is DIY_ZLMA?
------------------------
The DIY ZLMA is for fans and enthusiasts of researching Moving Averages (like me) - the script enables the user to play around with one of the common approaches used to reduce lag in moving averages - which was explained in this old post below
Suggested uses of the DIY_ZLMA
---------------------------------------
* The Zero-lag approach here applies 3 moving average passes to a source data series - I'll refer to these 3 passes as Base MA Pass , De-lagging Pass, and Smoothing Pass - these "passes" can be customized from the indicator settings in terms of MA Length and type. The first pass allows the choice of a "source", and the second pass allows additional fine tuning by playing around with the magnification factor. The 3rd pass (smoothing) is optional and can be skipped altogether when needed. (as noted in the script, HMA and TEMA, which are very common low-lag MA's use slightly different approach in the calculation than the one used here .. so we can't get an equivalent of either of these MA's with the customization of DIY_ZLMA parameters)
* After the user experiments with the various settings for the 3 passes, and finds a "preferred combination", the script not only plots the resulting My_ZLMA - it also produces the "1-line Pine script formula" that the user can then use in any other script, maybe to smoothen some data series, or to combine with other types of moving averages to create multi-MA cross-over trading signals... and so on.
* The DIY_ZLMA can also be added to another indicator as a signal line using the Indicator-on-Indicator feature of TradingView (review this post for step-by-step -->
)
* the script also showcases couple of recent (and very neat) Pine features: the use of User-defined Types (UDT) and User-defined Methods - which are awesome and a lot of fun to work with :)
Since this is more of a utility piece, I added as many comments as possible to the script to explain the way it works - so it's more valuable if someone finds it by searching the "Add Indicator" feature in TradingView charts
Please feel free to play around with this new toy :) and share comments and feedback below if you find this useful. I truly hope you do.
Hodrick-Prescott Channel [Loxx]Hodrick-Prescott Channel is a fast and slow moving average that moves inside a channel. Breakouts are when the fast ma crosses up over the slow ma and breakdowns are the opposite. The white moving average is the fast ma, the slow moving average is the red/green ma.
What is Hodrick–Prescott filter?
The Hodrick–Prescott filter (also known as Hodrick–Prescott decomposition) is a mathematical tool used in macroeconomics, especially in real business cycle theory, to remove the cyclical component of a time series from raw data. It is used to obtain a smoothed-curve representation of a time series, one that is more sensitive to long-term than to short-term fluctuations. The adjustment of the sensitivity of the trend to short-term fluctuations is achieved by modifying a multiplier Lambda.
The filter was popularized in the field of economics in the 1990s by economists Robert J. Hodrick and Nobel Memorial Prize winner Edward C. Prescott, though it was first proposed much earlier by E. T. Whittaker in 1923.
There are some drawbacks to use the HP filter than you can read here: en.wikipedia.org
Included
Bar coloring
Signals
Alerts
BTC Pi MultipleThe Pi Multiple is a function of 350 and 111-day moving average. When both intersect and the 111-day MA crosses above, it has historically coincided with a cycle top with a 3-day margin.
With the Pi Multiple, this intersection is visible when the line crosses zero upwards.
The indicator is called the Pi Multiple because 350/111 is close to Pi. It is based on the Pi Cycle Top Indicator developed by Philip Swift and has been modified for better readability by David Bertho.
Two MA Signal IndicatorThis Signal Indicator that emits a signal based on two MAs crossover/crossunder. It is designed to be used as an External Input for "Template Trailing Strategy" to verify the correctness of the External Deal Condition Mode of the aforementioned script and the Internal Strategy logic. Also, this script is a simple example on how to create custom signal indicators that can be "pugged" to the "Template Trailing Strategy" and get all the features this strategy script can provide!
Money Flow Index (double) by CoinStaghey Piners community,
this is an iteration of inbuilt MFI script, with two MFIs of different lengths and one Moving Average which is dependent on MFI 1.
I find it useful to see the trend of longer MFI period, which tells me what direction to trade. On shorter period MFI I'm looking at Oversold or Overbought zones - while quicker MFI index is there, I'm looking to Buy/Sell, depending on trend.
Alternatively, you can use also MFI1 and MA crossovers to spot potential entries.
It seems like a good tool for crypto markets on any timeframes - from 5min, to 4h.
3Commas BotBjorgum 3Commas Bot
A strategy in a box to get you started today
With 3rd party API providers growing in popularity, many are turning to automating their strategies on their favorite assets. With so many options and layers of customization possible, TradingView offers a place no better for young or even experienced coders to build a platform from to meet these needs. 3Commas has offered easy access with straight forward TradingView compatibility. Before long many have their brokers hooked up and are ready to send their alerts (or perhaps they have been trying with mixed success for some time now) only they realize there might just be a little bit more to building a strategy that they are comfortable letting out of their sight to trade their money while they eat, sleep, etc. Many may have ideas for entry criteria they are excited to try, but further questions arise... "What about risk mitigation?" "How can I set stop or limit orders?" "Is there not some basic shell of a strategy that has laid some of this out for me to get me going?"
Well now there is just that. This strategy is meant for those that have begun to delve into the world of algorithmic trading providing a template that offers risk defined positions complete with stops, limit orders, and even trailing stops should one so choose to employ any of these criteria. It provides a framework that is easily manipulated (with some basic working knowledge of pine coding) to encompass ones own ideas and entry criteria, while also providing an already functioning strategy.
The default settings have a basic 1:1 risk to reward ratio, which sets a limit and a stop equal distance from the entry. The entry is a simple MA cross (up for long, down for short). There a variety of MA's to choose from and the user can define the lengths of the averages. The ratio can be adjusted from the menu along with a volatility based adder (ATR) that helps to distance a stop from support or resistance. These values are calculated off the swing low/high of the user defined lookback period. Risk is calculated from position entry to stop, and projected upwards to the limit as a function of the desired risk to reward ratio. Of note: the default settings include 0.05% commissions. Competitive commissions of the leading cryptocurrency exchanges are .1% round trip (one buy and one sell) for market orders. There is also some slippage to allow time for alerts to be sent and orders to fill giving the back test results a more accurate representation of real time conditions. Its recommended to research the going rates for your exchange and set them to default for the strategy you use or build.
To get started a user would:
1) Make a copy of the code and paste in their bot keys in the area provided under the "3Comma Keys" section
- eg. Long bot "start deal" copied from 3commas in to define "Long" etc. (code is commented)
2) Place alert on desired asset with desired settings ensuring to select "Order fills and alert() function calls"
3) Paste webhook into the webhook box and select webhook URL alerts (3rd party provided webhook)
3) Delete contents of alert message box and replace with {{strategy.order.alert_message}} and nothing else
- the codes will be sent to the webhook appropriately as the strategy enters and exits positions. Only 1 alert is needed
settings used for the display image:
1hr chart on BTCUSD
-ATR stop
-Risk adjustment 1.2
-ATR multiplier 1.3
-RnR 0.6
-MAs HEMA/SMA
-MA Length 50/100
-Order size percent of equity
-Trail trigger 60% of target
Experiment with your own settings on your crypto of choice or implement your own code!
Implementing your trailing stop (optional)
Among the options for possible settings is a trailing stop. This stop will ratchet higher once triggered as a function of the Average True Range (ATR). There is a variable level to choose where the user would like to begin trailing the stop during the trade. The level can be assigned with a decimal between 0 and 1 (eg. 0.5 = 50% of the distance between entry and the target which must be exceeded before the trail triggers to begin). This can allow for some dips to occur during the trade possibly keeping you in the trade for longer, while potentially reducing risk of drawdown over time. The default for this setting is 0 meaning unless adjusted, the trail will trigger on entry if the trailing stop exit method is selected. An example can be seen below:
Again, optional as well is the choice to implement a limit order. If one were to select a trailing stop they could choose not to set a limit, which could allow a trail to run further until hit. Drawdowns of this strategy would be foregoing locking gains at highs on target on other trades. This is a trade-off the user can decide on and test. An example of this working in favor can be observed below:
Conclusion
Although a simple strategy is implemented here, the benefits of this script allow a user a starting platform to build their strategies from with built in risk mitigation. This allows the user to sidestep some of the potential difficulties' that can arise while learning Pine and taking on the endeavor of automating their trading strategies. It is meant as an aid, a structure, and an educational piece that can be seen as a "pick-up-and-go" strategy with easy 3Commas compatibility. Additionally, this can help users become more comfortable with strategy alert messages and sending strings in the form of alerts from Pine. As well, FAQs are often littered with questions regarding "strategy.exit" calls, how to implement stops. how to properly set a trailing stop based on ATR, and more. The time this can save an individual to get started is likely of the best "take-aways" here.
Happy trading
RedK Compound Ratio Moving Average (CoRa_Wave)
Compound Ratio Weighted Average (CoRa_Wave) is a moving average where the weights increase in a "logarithmically linear" way - from the furthest point in the data to the current point - the formula to calculate these weights work in a similar way to how "compound ratio" works - you start with an initial amount, then add a consistent "ratio of the cumulative prior sum" each period until you reach the end amount. The result is, the "step ratio" between the weights is consistent - This is not the case with linear-weights moving average (WMA), or EMA
- for example, if you consider a Weighted Moving Average (WMA) of length 5, the weights will be (from the furthest point towards the most current) 1, 2, 3, 4, 5 -- we can see that the ratio between these weights are inconsistent. in fact, the ratio between the 2 furthest points is 2:1, but the ratio between the most recent points is 5:4 -- the ratio is inconsistent, and in fact, more recent points are not getting the best weights they should/can get to counter-act the lag effect. Using the Compound ratio approach addresses that point.
a key advantage here is that we can significantly reduce the "tail weight" - which is "relatively" large in other MAs and would be main cause for lag - giving more weights to the most recent data points - and in a way that is consistent, reliable and easy to "code"
- the outcome is, a moving average line that suffers very little lag regardless of the length, and that can be relied on to track the price movements and swings closely.
other features:
===============
- An accelerator, or multiplier, has been added to further increase the "aggressiveness" of the moving average line, giving even more weights to the more recent points - the multiplier will have more effect between 1 and 5, then will have a diminishing effect after that - note that a multiplier of 0 (which effectively causes a comp. ratio of 0 to be applied) will produce a Simple Moving Average line :)
- We also added the ability to use an "automatic smoothing" mechanism, that user can over-ride by manually choosing how much smoothing is used. This gives more flexibility to how we can leverage this Moving Average in our charting.
- User can also select the Resolution and Source price for the CoRa_Wave. by default, they will be set to "same as chart" and hlc3
here are the formulas for our Compound Ratio moving average:
Compound Weight ratio r = (A/P)^1/t - 1
Weight at time t A = P(1 + r)^t
= Start_val * (1 + r) ^ index
index in the above formula is 0 for the furthest point out
Here's how CoRa_Wave compares to other common moving averages all set to the same length (20)
Proposed Usage
- CoRa_Wave can be used for any scenarios where we need a moving average that closely tracks the price, trend, swings with high responsiveness and little lag
- MA Cross-over scenarios - against another CoRa_Wave or any other MA
- below is a quick example scenario for how to utilize 2 CoRa_Wave lines of same length (one for open and one for closing price) to track swings and trends
- get as creative as you need :)
Code is commented - please feel free to leverage or customize further as you need.
👉 if you are interested in other moving averages i posted before, please check out the FiMA and the v_Wave ...
+ True RSIThis is a better, cleaner version (in my opinion) of an part of an indicator I was using that was coded up by cI8DH. I reached out to him about cleaning up the code (things weren't working) for Pinescript v4, but he no longer seems to be active, so I thought I might take it upon myself to at least work out this portion of the indicator.
Much credit goes to him. Below is the indicator that he coded, of which only one part have I made additions to.
So, he calls this the True RSI. I was using it as part of the USI, which I posted above (it's the MA Percent indicator type). To my eyes it's not far different from the standard RSI, so I probably could have just made a version of that, but I like this one, and I was excited to add a few things (like candle coloring, which no longer works with his version!).
So, what's different?
I added two different background fills.
I made the lines types for the extremities and midline more appropriate for the indicator.
I added bullish, bearish, overbought, and oversold candle coloring.
I added a multitude of moving averages as well.
If this looks like my '+ %B' indicator, that is because I basically just moved the MA's and candle coloring code over. One could probably do this with many different indicators.
In the future I will probably add alerts, and maybe MA cross candles as well. Or not. Well, almost certainly alerts. Please enjoy!
CS Ultimate MA CrossThis indicator adds 5 Moving Averages on your chart. You can select the MA Type: SMA, EMA, RMA or VWMA.
By selecting a Fast MA and a Slow MA you can also draw a cloud to make the Bull or Bear bias more visual. Possibility to add on the chart Long/Short signal.
MTF possible by changing the range which is particularly useful for HTF analysis while looking a LTF price action.
Gastitan MA-cross/RSI/PSARThis script gives
moving average cross alert
RSI alert when change from bull to bear, and viceverse
Parabolic sar indicator
Also you have a panel with the current price and RSI values.
E_SMACD_And_Pine_TutorialI wrote this script to both be a Pine Script tutorial and a useable indicator. I use it for trading crypto based on trends I see in the ma crossovers, highs/lows, and volatility spikes.
Mathias & Christer Timeframe RSIThis strategy is based on High and low RSI.
If RSI is => 80 and RSI drops enter Sell position
If RSI is =< 20 anr RSI goes up enter Buy position.
as exit I use MA crosses
MA short (30)
MA Long (50)
eha MA CrossIn the study of time series, and specifically technical analysis of the stock market, a moving-average cross occurs when, the traces of plotting of two moving averages each based on different degrees of smoothing cross each other. Although it does not predict future direction but at least shows trends.
This indicator uses two moving averages, a slower moving average and a faster-moving average. The faster moving average is a short term moving average. A short term moving average is faster because it only considers prices over a short period of time and is thus more reactive to daily price changes.
On the other hand, a long term moving average is deemed slower as it encapsulates prices over a longer period and is more passive. However, it tends to smooth out price noises which are often reflected in short term moving averages.
There are a bunch of parameters that you can set on this indicator based on your needs.
Moving Averages Algorithm
You can choose between three types provided of Algorithms
Simple Moving Average
Exponential Moving Average
Weighted Moving Average
I will update this study with more educational materials in the near future so be informed by following the study and let me know what you think about it.
Please hit the like button if this study is useful for you.